The present invention relates to a method for processing a unit of work.
In some edge connectivity scenarios it is necessary to connect a large number, typically tens of thousands, of client computers. These client computers may need to perform updates to a server which are persistent, for example, reliably delivering messages to or from the server.
Typically, one thread per client waits for work from the client and when work is received, the server performs a disk force in a transaction specific to the client.
Disk forces are expensive in that they cause delay and this problem is compounded when disk forces occur for work from multiple client computers. The system software may try to merge several disk forces together to mitigate this, at a cost of having to manage the merging of disk forces.
Further, this mechanism requires many threads to be active.
Both problems inhibit scalability, especially in the case where there are many (e.g., tens of thousands) client computers